home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Tools / Languages / MacOberonLite 1.0.1 / Sys Files / MacProcesses.Mod (.txt) < prev    next >
Encoding:
Oberon Text  |  1993-05-16  |  5.3 KB  |  132 lines  |  [.Ob./.Ob4]

  1. Syntax10.Scn.Fnt
  2. Syntax10b.Scn.Fnt
  3. MODULE MacProcesses;
  4. (* This Module contains all essentiel constants, datatypes and routines from the NEW Inside Macintosh
  5.             Processes
  6.     However this implementation is NOT complete. If use miss some items, please use Inside Mac
  7.     and complete this module for your needs.
  8.     See the documentation ( MakeMacApp.Doc ) for more information about the usage of this module.  *)
  9. IMPORT SYSTEM,ME:=MacMemory,TB:=MacToolBox,MF:=MacFiles;
  10. CONST
  11.     kNoProcess* = 0;
  12.     kSystemProcess* = 1;
  13.     kCurrentProcess* = 2;
  14.     (* Process Manager *)
  15.     ProcessSerialNumberPtr* = POINTER- TO ProcessSerialNumber;
  16.     ProcessSerialNumber* = RECORD
  17.         highLongOfPSN*: LONGINT;
  18.         lowLongOfPSN*: LONGINT
  19.     END;
  20.     AppParametersPtr* = POINTER- TO AppParameters;
  21.     AppParameters* = RECORD
  22.         theMsgEvent*: TB.EventRecord;
  23.         eventRefCon*: LONGINT;
  24.         messageLength*: LONGINT;
  25.         messageBuffer*: LONGINT
  26.     END;
  27.     LaunchPBPtr* = POINTER- TO LaunchParamBlockRec;
  28.     LaunchParamBlockRec* = RECORD
  29.         reserved1: LONGINT;
  30.         reserved2: INTEGER;
  31.         launchBlockID*: INTEGER;
  32.         launchEPBLength*: LONGINT;
  33.         launchFileFlags*: INTEGER;
  34.         launchControlFlags*: INTEGER;
  35.         launchAppSpec*: MF.FSSpecPtr;
  36.         launchProcessSN*: ProcessSerialNumber;
  37.         launchPreferredSize*: LONGINT;
  38.         launchMinimumSize*: LONGINT;
  39.         launchAvailableSize*: LONGINT;
  40.         launchAppParameters*: AppParametersPtr
  41.     END;
  42.     ProcessInfoRecPtr* = POINTER- TO ProcessInfoRec;
  43.     ProcessInfoRec* = RECORD
  44.         processInfoLength*: ME.StringPtr;
  45.         processName*: LONGINT;
  46.         processNumber*: ProcessSerialNumber;
  47.         processType*: LONGINT;
  48.         processSignature*: LONGINT;
  49.         processMode*: LONGINT;
  50.         processLocation*: LONGINT;    (* address *)
  51.         processSize*: LONGINT;
  52.         processFreeMem*: LONGINT;
  53.         processLauncher*: ProcessSerialNumber;
  54.         processLaunchDate*: LONGINT;
  55.         processActiveTime*: LONGINT;
  56.         processAppSpec*: MF.FSSpecPtr
  57.     END;
  58.     (* Time Manager *)
  59.         TMMaskPtr*=POINTER- TO TMTask;
  60.         TMTask*=RECORD
  61.             qLink: ME.Ptr;
  62.             qType: INTEGER;
  63.             tmAddr: PROCEDURE;
  64.             tmCount: LONGINT;
  65.             tmWakeUp: LONGINT;
  66.             tmReserved: LONGINT
  67.         END;
  68.     (* Vertical Retrace Manager *)
  69.         VBLTask*=RECORD
  70.             qLink: ME.Ptr;
  71.             qType: INTEGER;
  72.             vblAddr: PROCEDURE;
  73.             vblCount: INTEGER;
  74.             vblPhase: INTEGER
  75.         END;
  76.     (* Notification Manager *)
  77.         NMRecPtr*=POINTER- TO NMRec;
  78.         NMRec = RECORD
  79.              qLink: ME.Ptr;
  80.              qType: INTEGER;
  81.              nmFlags: INTEGER;
  82.              nmPrivate: LONGINT;
  83.              nmReserved: INTEGER;
  84.              nmMark: INTEGER;
  85.              nmIcon: ME.Handle;
  86.              nmSound: ME.Handle;
  87.              nmStr: ME.StringPtr;
  88.              nmResp: PROCEDURE;
  89.              nmRefCon: LONGINT
  90.         END;
  91.     (* Process Manager *)
  92.     PROCEDURE- LaunchApplication*(LaunchParams:LaunchPBPtr): INTEGER    020H,05FH,0A9H,0F2H,03EH,080H;
  93.     PROCEDURE- LaunchDeskAccessory*(pFileSpec: MF.FSSpecPtr; pDAName: ME.StringPtr): INTEGER
  94.         03FH,03CH,000H,036H,0A8H,08FH;
  95.     PROCEDURE- GetCurrentProcess*(VAR PSN: ProcessSerialNumber): INTEGER    03FH,03CH,000H,037H,0A8H,08FH;
  96.     PROCEDURE- GetFrontProcess*(VAR PSN: ProcessSerialNumber): INTEGER    070H,0FFH,02FH,000H,03FH,03CH,000H,
  97.         039H,0A8H,08FH;
  98.     PROCEDURE- GetNextProcess*(VAR PSN: ProcessSerialNumber): INTEGER    03FH,03CH,000H,038H,0A8H,08FH;
  99.     PROCEDURE- GetProcessInformation*(PSN: ProcessSerialNumber;VAR info: ProcessInfoRec): INTEGER
  100.         03FH,03CH,000H,03AH,0A8H,08FH;
  101.     PROCEDURE- SetFrontProcess*(PSN: ProcessSerialNumber): INTEGER    03FH,03CH,000H,03BH,0A8H,08FH;
  102.     PROCEDURE- WakeUpProcess*(PSN: ProcessSerialNumber): INTEGER    03FH,03CH,000H,03CH,0A8H,08FH;
  103.     PROCEDURE- SameProcess*(PSN1: ProcessSerialNumber;PSN2: ProcessSerialNumber; VAR result: BOOLEAN): INTEGER
  104.         03FH,03CH,000H,03DH,0A8H,08FH;
  105.     PROCEDURE- ExitToShell*    0A9H,0F4H;
  106.     (* Time Manager *)
  107.     PROCEDURE- InsTime*(tmTaskPtr:ME.Ptr)    020H,05FH,0A0H,058H;
  108.     PROCEDURE- InsXTime*(tmTaskPtr: ME.Ptr)    020H,05FH,0A4H,058H;
  109.     PROCEDURE- PrimeTime*(tmTaskPtr: ME.Ptr;count: LONGINT)    020H,01FH,020H,05FH,0A0H,05AH;
  110.     PROCEDURE- RmvTime*(tmTaskPtr : ME.Ptr)    020H,05FH,0A0H,059H;
  111.     (* Vertical Retrace Manager *)
  112.     PROCEDURE- GetVBLQHdr*() : ME.Ptr    02EH,0BCH,000H,000H,001H,060H;
  113.     PROCEDURE- SlotVInstall*(vblBlockPtr: ME.Ptr;theSlot: INTEGER): INTEGER    030H,01FH,020H,05FH,0A0H,06FH,03EH,080H;
  114.     PROCEDURE- SlotVRemove*(vblBlPtr: ME.Ptr;theSlot: INTEGER): INTEGER    030H,001H,020H,05FH,0A0H,070H,03EH,080H;
  115.     PROCEDURE- AttachVBL*(theSlot: INTEGER): INTEGER    030H,01FH,0A0H,071H,03EH,080H;
  116.     PROCEDURE- DoVBLTask*(theSlot: INTEGER): INTEGER    030H,01FH,0A0H,072H,03EH,080H;
  117.     PROCEDURE- VInstall*(vblTaskPtr: ME.Ptr): INTEGER    020H,05FH,0A0H,033H,03EH,080H;
  118.     PROCEDURE- VRemove(vblTaskPtr: ME.Ptr): INTEGER    020H,05FH,0A0H,034H,03EH,080H;
  119.     (* Notification Manager *)
  120.     PROCEDURE- NMInstall*(nmReqPtr: NMRecPtr): INTEGER    020H,05FH,0A0H,05EH,03EH,080H;
  121.     PROCEDURE- NMRemove*(nmReqPtr: NMRecPtr): INTEGER    020H,05FH,0A0H,05FH,03EH,080H;
  122.     (* Segment Manager *)
  123.     PROCEDURE- UnloadSeg*(routineAddr: LONGINT)    0A9H,0F1H;
  124.     (* Shutdown Manager *)
  125.     PROCEDURE- ShutDwnPower*    03FH,03CH,000H,001H,0A8H,095H;
  126.     PROCEDURE- ShutDwnStart*    03FH,03CH,000H,002H,0A8H,095H;
  127.     PROCEDURE- ShutDwnInstall*(shutDownProc: PROCEDURE;flags: INTEGER)    03FH,03CH,000H,003H,0A8H,095H;
  128.     PROCEDURE- ShutDwnRemove*(shutDownProc: PROCEDURE)    03FH,03CH,000H,004H,0A8H,095H;
  129.     (* Register based *)
  130.     PROCEDURE- DTInstall*    0A0H,082H;
  131. END MacProcesses.
  132.